package com.lzm.one.data;

import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Paths;

/**
 * @Author LiZhiMin
 * @Date 2024/10/29 12:17
 */

public class GenerateText {

    public static void main(String[] args) {
        // 示例内容，包含多种句子
        String sentences =
                "技术的发展推动着社会的进步。\n" +
                        "科学探索是人类不断追求真理的过程。\n" +
                        "文学是人类表达情感和思想的方式。\n" +
                        "文化是一个民族的灵魂。\n" +
                        "教育是改变个人和社会的关键。\n" +
                        "环保问题日益严重。\n" +
                        "人工智能正在改变我们的生活方式。\n" +
                        "通过实验和研究，我们得以揭示自然界的奥秘。\n" +
                        "不同文化之间的碰撞与融合，推动了人类文明的进步。\n" +
                        "良好的教育不仅能传授知识，更能培养人的思维能力和社会责任感。\n";

        // 计算需要重复的次数
        int repeatCount = (16 * 1024 * 1024) / sentences.getBytes(StandardCharsets.UTF_8).length + 1;
        StringBuilder content = new StringBuilder(sentences.length() * repeatCount);

        // 使用 StringBuilder 生成大字符串
        for (int i = 0; i < repeatCount; i++) {
            content.append(sentences);
        }

        // 输出生成的内容长度
        System.out.println("生成的内容长度（字节）: " + content.toString().getBytes(StandardCharsets.UTF_8).length);

        // 保存到指定路径
        String outputPath = "D:\\需求\\data.txt";  // 指定文件保存路径
        try {
            Files.write(Paths.get(outputPath), content.toString().getBytes(StandardCharsets.UTF_8));
            System.out.println("内容已成功保存到: " + outputPath);
        } catch (IOException e) {
            System.err.println("保存文件时出错: " + e.getMessage());
        }
    }
}